Connectivity analysis for arrhythmia drivers

ABSTRACT

One or more non-transitory computer-readable media have instructions executable by a processor and programmed to perform a method. The method includes analyzing the electrical data to locate one or more wave front lines over a given time interval. The electrical data represents electrophysiological signals distributed across a cardiac envelope for one or more time intervals. A respective trajectory is determined for each wave end of each wave front line that is located across the cardiac envelope over the given time interval. A set of connected trajectories are identified based on a duration that the trajectories are connected to each other by a respective wave front line during the given time interval. A connectivity association is characterized for the trajectories in the set of connected trajectories.

TECHNICAL FIELD

This disclosure relates to analysis and detection for arrhythmiadrivers.

BACKGROUND

Cardiac arrhythmia, also known as dysrhythmia, refers generally to anyof a group of conditions in which the electrical activity of the heartis irregular or is faster or slower than normal. Arrhythmias can occurin the upper chambers of the heart, or in the lower chambers of theheart. Arrhythmias may occur at any age. Some are barely perceptible,whereas others can be more dramatic and can even lead to sudden cardiacdeath. The identification of potential arrhythmogenic sites can helpguide treatment.

SUMMARY

This disclosure relates to connectivity analysis for arrhythmia drivers.

As one example, one or more non-transitory computer-readable media haveinstructions executable by a processor and programmed to perform amethod. The method includes analyzing the electrical data to locate oneor more wave front lines over a given time interval. The electrical datarepresents electrophysiological signals distributed across a cardiacenvelope for one or more time intervals. A respective trajectory isdetermined for each wave end of each wave front line that is locatedacross the cardiac envelope over the given time interval. A set ofconnected trajectories are identified based on a duration that thetrajectories are connected to each other by a respective wave front lineduring the given time interval. A connectivity association ischaracterized for the trajectories in the set of connected trajectories.

As another example, a system includes memory to store machine readableinstructions and data, the data comprising store electrical datarepresenting electrophysiological signals distributed across a cardiacenvelope for one or more time intervals. The system also includes aprocessor to access the memory and execute the instructions. Theinstructions include a wave front analyzer, a trajectory detector, aconnectivity detector and a connectivity characterization function. Thewave front analyzer analyzes electrical data for a given time intervalto identify a wave front line across the cardiac envelope. Thetrajectory detector detects a respective trajectory for wave ends of thewave front line over the given time interval. The connectivity detectoridentifies a set of connected trajectories according to a duration thatthe trajectories of wave ends are connected to each other by the wavefront line over the given time interval. The connectivitycharacterization function that applies spatial and/or temporal criteriato characterize a connectivity association for trajectories in the setof connected trajectories. An output generator provides output data todrive a display with a graphical representation of the connectivityassociation for the trajectories in the set of connected trajectories.

In some examples, the systems and methods can store computed informationas arrhythmia driver data. The arrhythmia driver data can be employed togenerate one or more graphical maps for each such arrhythmia driver. Inother examples, the arrhythmia driver data can be used to control atherapy system that is configured to deliver a therapy to a patient.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts an example of a system to analyze trajectories forarrhythmia drivers.

FIG. 2 depicts an example of a system to detect trajectories.

FIG. 3 depicts an example of a mapping and treatment system.

FIG. 4 depicts an example of a graphical map demonstrating connectivitybetween trajectories.

FIG. 5 depicts an example of a graphical map demonstrating connectedtrajectories over a plurality of different time intervals.

FIG. 6 depicts an example of a graphical map demonstrating connectedtrajectories and rotation cores.

FIG. 7 depicts an example of a graphical map demonstrating a localconnectivity association between connected trajectories over a pluralityof different time intervals.

FIG. 8 depicts an example of a graphical map demonstrating the localconnectivity association between trajectories from another view for themap of FIG. 7.

FIG. 9 depicts an example of a graphical map demonstrating a farconnectivity association between connected trajectories over a pluralityof different time intervals.

FIG. 10 depicts an example of a graphical map demonstrating the farconnectivity association between trajectories from another view for themap of FIG. 9.

FIG. 11 is a flow diagram depicting an example of a method for analyzingand detecting connectivity among arrhythmia drivers.

DETAILED DESCRIPTION

This disclosure relate to detection and analysis of arrhythmia drivers.In one example, one or more wave front lines can be determined across ageometric surface over a time interval and corresponding trajectoriescan be detected for a given wave front line. The trajectories can tracemovement of end points of the given wave front line across the geometricsurface over the time interval. The trajectories determined during thetime interval can be analyzed to identify one or more sets of connectedtrajectories. For example, the trajectories can be considered asconnected when the trajectories are linked by a common wave front linefor at least a predetermined period of time. Systems and methods hereincan also apply criteria (e.g., spatial and/or temporal thresholds) tocharacterize a connectivity association for trajectories in each set ofconnected trajectories. For instance, the connectivity association forconnected trajectories can be classified as a local connectivityassociation, a far connectivity association or an intermediateassociation according to the applied connectivity criteria.

To enable user perception based on the detection and analysis, an outputgenerator can generate a graphical map to display informationdemonstrating the connected trajectories and/or a connectivityassociation, such as superimposed graphics on a heart model (e.g., athree-dimensional model). In some examples, the analysis and detectionmay be repeated for electrophysiological signals acquired over aplurality of time intervals to provide a composite indication ofconnected trajectories. Additionally or alternatively, the process canbe repeated during an interactive procedure to help guide treatment toone or more arrhythmogenic sites. For example, treatment sites can beidentified on the graphical map, such as in a region on a cardiacsurface residing between a pair of connected trajectories. Various otheroutputs (e.g., rotation maps) can be generated as well and concurrentlyor separately displayed. By identifying connected trajectories at siteson the heart, as disclosed herein, treatment at locations where thetrajectories are linked occur, such as between connected trajectories,may positively impact arrhythmogenic activity (e.g., atrialfibrillation, atrial tachycardia, ventricular fibrillation, ventriculartachycardia and the like).

While many examples of trajectory detection and analysis are disclosedwith respect to reconstructed electrograms on a cardiac envelope, suchas a cardiac surface, the systems and methods disclosed herein areequally applicable to any electrical signals for a geometric surface,whether measured directly for the surface by contact or non-contactsensors or derived (e.g., reconstructed) from measurements.Additionally, while many examples herein are described in the context ofdetection and analysis of cardiac electrical signals, it is to beunderstood that the approaches disclosed herein are equally applicableto other electrophysiological signals, such as acquired as part ofelectroencephalography, electromyography, electrooculography and thelike. That is, the system and method disclosed herein can be applied toanalyze trajectories of correlated parts of the waveform that can beacquired from or calculated for a surface.

FIG. 1 depicts an example of a system 10 to detect and analyzearrhythmia drivers, namely as associations between trajectories. As usedherein, in the context of cardiac electrophysiology, the term trajectorycan refer to an organized disorganized source of any electrical activityfor the heart that remains active and traverses across a cardiac surfacefor at least some minimum period of time. Thus, the system 10 cananalyze electrical data 12, such as electrical signals distributedacross the cardiac surface (e.g., the entire heart or one or moreregions thereof). The electrical data 12 can be stored in memory (e.g.,one or more non-transitory computer readable media). As an example, theelectrical data includes geometry information (e.g., corresponding togeometry data 14) for an anatomical surface to provide electroanatomicdata that describes electrical activity at a plurality of anatomicallocations (e.g., nodes) for one or more time intervals. In someexamples, the electrical data 12 can be provided as electrograms orother electrical waveforms representing electrical activity for thenodes distributed across the cardiac surface.

As a further example, the geometry data defines anatomical locationsrepresented as nodes distributed (e.g., an even distribution) over ageometric surface. The geometric surface can be a three-dimensionalsurface of an anatomical structure, such as tissue of a patient (e.g.,human or other animal). In some examples, the patient tissue is cardiactissue, such that the geometric surface corresponds to an epicardialsurface, an endocardial surface or another cardiac envelope, and theelectrical data 12 represents signals at nodes on such surface. Thegeometric surface can be patient specific (e.g., based on imaging datafor the patient), it can be a generic model of the surface or it can bea hybrid version of a model that is customized based on patient-specificdata (e.g., imaging data, patient measurements, reconstructed data,and/or the like). The electrical data 12 thus can characterizeelectrical signals for nodes distributed across any such geometricsurface. As disclosed herein, the geometric surface containing the nodesat which the electrical signals can be defined by the geometry data 14that is stored in memory, and may be part of or otherwise associatedwith the electrical data 12.

As a further example, the electrical data 12 can correspond toelectrophysiological signals, such as can correspond to physiologicalsignals obtained by one or more electrodes or otherwise derived fromsuch signals. For instance, the electrodes can be applied to measure theelectrical activity non-invasively, such as may be positioned over apatient's body surface such as the patient's head (e.g., forelectroencephalography), a patient's thorax (e.g., forelectrocardiography) or other noninvasive locations. The electrical datathus can correspond to the body surface measured electrical signals or,as disclosed herein, be reconstructed onto another surface based on thebody surface measurements. In other examples, the electrical data 12 canbe acquired invasively, such as by one or more electrodes positionedwithin a patient's body (e.g., on a lead or a basket catheter during anEP study or the like). In yet other examples, the input electrical data12 can include or be derived from a hybrid approach that includes bothnon-invasively acquired electrical signals and invasively acquiredelectrical signals.

The electrical data 12 can include electrical activity for nodes on ageometric surface that is defined by the geometry data 14. The geometrydata 14 can represent a two-dimensional or a three-dimensional surfacefor the patient. For example, the geometric surface can be a bodysurface (e.g., an outer surface of the thorax or portion thereof) wheresensors are positioned to measure electrical activity. In otherexamples, the surface can be a surface of internal tissue or a computedenvelope having a prescribed position relative to certain internaltissue. Depending on the geometric surface for which the electrical data12 is provided, the geometry data 14 can correspond to actual patientanatomical geometry (e.g., derived from one or more imagingtechnologies, such as x-ray, computed tomography, magnetic resonanceimaging or the like), a preprogrammed generic model or a hybrid thereof(e.g., a model that is modified based on patient anatomy). That is, thegeometric surface should represent the same surface that contains thenodes where the electrical activity represented by the electrical data12 resides.

The system 10 also employs a wave front analyzer 16 to identify one ormore wave front lines across the geometric surface based on theelectrical data 12 for signals over such surface. A wave front linecorresponds to a collection of substantially contiguous nodes across thesurface having electrical signals that exhibit an activation ordepolarization at a respective time. Thus, as the activation ordepolarization of nodes propagates across the surface, the nodes can beconnected to define a wave front line. At each instant in time (e.g., atime sample index or time frame) while the wave front is active, asegment of nodes along the edge of the wave front defines a wave frontline. The wave front line thus extends between a pair of spaced apartend nodes thereof, referred to herein as wave ends (also known as wavebreak points). In some situations, a wave front may form a closed loopand thus does not have wave ends. As used herein, a wave front linerefers to a segment formed of an arrangement of nodes that does not forma loop.

As one example, the wave front analyzer 16 can be implemented todetermine wave front locations and wave front lines as disclosed inInternational application no. PCT/US14/12051, filed on Jan. 17, 2014,and entitled WAVE FRONT DETECTION FOR ELECTROPHYSIOLOGICAL SIGNALS,which is incorporated herein by reference. In other examples, the wavefront analyzer 16 may implement different approaches, includingnon-phase based approaches, to determine the activation times, wavefront locations and wave front lines across the surface. One example ofa non-phase based approach to determine wave fronts and wave front linesis disclosed in U.S. patent application Ser. No. 15/498,662, filedconcurrently with this application on Apr. 27, 2017, and entitledDETECTING CONDUCTION TIMING, which is incorporated herein by referencein its entirety.

A trajectory detector 18 determines trajectories based upon wave frontdata (representing spatial and timing data for nodes on one or more wavefront lines) provided by the wave front analyzer 16. The trajectorydetector 18 determines the trajectory for wave ends of each wave frontline across the geometric surface (cardiac envelope) during a given timeinterval. The trajectory for each end in the given time interval can bestored in memory as separate trajectory data.

As an example, the trajectory detector 18 includes machine-readableinstructions programmed to identify wave ends of wave front lines ineach time sample over one or more time intervals, which may becontiguous or non-contiguous time intervals. For the first time sample,each wave end initializes a new trajectory and each such trajectory willbe active. Then for the remaining time samples in the interval, thetrajectory detector 18 can identify wave ends from the end nodes of acorresponding wave front line for each subsequent time sample. Thetrajectory detector 18 can be programmed to evaluate each wave endtemporally and spatially to determine whether the wave break pointshould be added to a respective active trajectory or if such break pointshould begin another new trajectory. An active trajectory may becomeinactive, for example, if no wave ends are appended to it for a certainperiod (e.g., a predetermined or user-programmable duration threshold,such as about 5 ms). After constructing each trajectory in the timeinterval, the trajectory detector can apply a temporal constraint (e.g.,a predetermined or user-programmable duration threshold, such as about100 ms) so that only trajectories that remain active longer than aprescribed amount of time are stored in memory as trajectory data.

A connectivity detector 20 can determine if a given pair of rotors isconnected based on the wave front data (provided by wave front analyzer16) and the trajectory data (provided by trajectory detector 18) duringa given time interval. As used herein, a connection between trajectoriesrefers to an association or link between wave ends resulting from one ormore wave front lines that link the pair of identified trajectoriestemporally and/or spatially across the geometric surface (cardiacenvelope). For example, the connectivity detector 20 can ascertain thatwave ends are connected in response to determining that the trajectoriesfor such wave ends are linked over a predetermined period of time orsome percentage of time that each trajectory is active during one ormultiple time intervals. The connectivity detector 20 can track andstore (e.g., as metadata describing spatially and/or temporally) anindication of each wave front line to which a corresponding wave endbelongs for each respective trajectory that is generated. In response toconnectivity detector 20 determining that wave end trajectories specifythe same wave front line over a number of time samples (in one or moretime intervals), which can be a predetermined minimum threshold numberof samples, connectivity between such trajectories can be affirmed andthe trajectories can be identified as being connected. If theconnectivity detector 20 determines that trajectories do not meet theminimum connectivity criteria (number of samples) during theinterval(s), the trajectories are not identified as being connected. Theconnectivity detector 20 stores the connectivity data in memory toidentify each set of connected wave end trajectories during one or moretime intervals.

The connectivity characterization function 22 is programmed tocharacterize a connectivity association for trajectories in each set ofconnected trajectories (stored as connectivity data). For example, theconnectivity characterization function 22 is programmed to quantify aconnectivity association between connected trajectories (e.g., indicatehow stable the connection/link is temporally during the time intervaland/or spatially across the cardiac envelope). The connectivitycharacterization function 22 can discriminate between a plurality ofdifferent types of predetermined connectivity associations for the setof connected trajectories based on a distance between the trajectories.For instance, the connectivity characterization function 22 computes adistance between each of the connected trajectories across the geometricsurface (cardiac envelope). The connectivity characterization function22 applies a spatial threshold to the computed distance ascertain whichone of the plurality of different types of predetermined connectivityassociations characterizes the connectivity association. In someexamples, the connectivity characterization function 22 applies multiplespatial and temporal thresholds to ascertain which one of the pluralityof different types of predetermined connectivity associationscharacterizes the connectivity association. While the connectivitydetector 20 and connectivity characterization function 22 are generallydescribed as being separate, such functions can be integrated to applyspatial and temporal criteria to identify and characterize connectedtrajectories in the manner disclosed herein.

The connectivity characterization function 22 may be programmed tocompute the distance between connected trajectories in two orthree-dimensional space, such as the distance between nodes where thetrajectories reside at a given time index. For example, the distance maybe computed as a Euclidean distance (e.g., a straight line) betweennodes. As another example, the distance may be computed as a curveddistance across the geometric surface mesh, which may be shortestdistance along a curved path between end nodes or distance along edgesof the mesh along a path between an intervening set of nodes on thegeometric surface.

As a further example, since the trajectories for which the distance isbeing calculated are connected over a plurality of time frames (samples)during a given interval, the connectivity characterization function 22may compute the distance for each time frame with each pair of wave endpoints of a wave front line, and the time samples where the distance isless than the specified distance threshold will be counted as connectedwithin the given interval. The time samples where the distance exceedsthe specified distance threshold may be considered as not beingconnected within the given interval. The time indices where thetrajectories are connected can be tagged and utilized to furthercharacterize the connectivity (spatially and/or temporally).Additionally or alternatively, the distance between each of theconnected trajectories from each time frame may be averaged (e.g., overthe total number of samples or duration of connectivity). The averagedcenter distance between connected trajectories may be used as thedistance between trajectories to further characterize the connectivitybetween trajectories (spatially and/or temporally).

As a further example, the connectivity characterization function 22discriminates between a plurality of different types of predeterminedconnectivity associations for trajectories based on applying spatialand/or temporal criteria 24 and 26, respectively, to each set ofconnected trajectories. The connectivity associations can include alocal connectivity association, a far connectivity association and anintermediate connectivity association. Other connectivity associationsfor connected trajectories may be used in other examples. In thisexample, the connectivity characterization function 22 specifies thelocal connectivity association for a set of connected trajectories inresponse to determining that the distance between the connectedtrajectories is less than a first spatial threshold (e.g., less thanabout 3.5 cm). The connectivity characterization function 22 furtherspecifies the far connectivity association for the set of connectedtrajectories in response to determining that the distance between theconnected trajectories exceeds a second threshold (e.g., greater thanabout 5 cm). Additionally, the connectivity characterization function 22may specify the intermediate connectivity for the connected trajectoriesin response to determining that the distance between the connectedtrajectories is outside of the first and second thresholds. A temporalthreshold (e.g., greater than about 70 ms) may also be applied to ensureboth temporal and spatial criteria are satisfied for each level ofclassification. The thresholds may be user programmable.

An output generator 30 can generate one or more outputs to drive (viaoutput interface or port) an associated display 32 with graphical and/ortextual information, such as based on wave front data, trajectory data,connectivity data and/or characterization data. For example, the outputgenerator can provide graphical data (that superimposes suchconnectivity information on a graphical representation of the geometricsurface (cardiac envelope) according to the geometry data 14 to render acorresponding electroanatomic map. The map can be a static map thatrepresents information derived from one or more time intervals. Asanother example, presentation of the graphical maps in a sequence in anorder of the time indices can demonstrate dynamic behavior of thetrajectories and related connectivity characteristics across thegeometric surface. Some example outputs are demonstrated with respect toFIGS. 4-10. While in the example of FIG. 1 the analysis and detectionfunctions 16, 18, 20 and 22 are demonstrated as being separate from theoutput generator 30, in other examples, the analysis and detectionfunctions could be implemented as a module (e.g., machine readableinstructions) that is integrated with output generator.

The output generator 30 further can be configured to rotate the surfacegeometry (e.g., a 3-D surface) along with any information rendered onthe surface in response to a user input. The user-responsive rotationenables a user to selectively reveal other portions of the surface andtheir wave front activity according to the phase signals that have beencomputed at such locations, as disclosed herein. Additionally, thegraphical map can employ a color coding range or other scale utilized tographically differentiate between different connectivity associationsbeing mapped onto the geometric surface. As yet a further example, thesystems and methods to perform detection of one or more arrhythmiadrivers and related rendering in electrocardiographic maps, as disclosedherein, can be combined with other diagnostic and monitoring tools,which may include therapy delivery, to provide an integrated system(see, e.g., FIG. 3).

The connectivity characterization function 22 further may be programmedto prioritize one of the predetermined connectivity associations fortrajectories over others, such as based on arrhythmia data 34. Thearrhythmia data 34 may be set or be selected in response to a userinput, for example, specifying an underlying type of arrhythmiabelonging to a patient from which the electrical data 12 is acquired andbeing analyzed via the system 10. For instance, other means, which maybe implemented by the system 10 or separately, can be employed todiagnose the underlying arrhythmia. If more than one type of arrhythmiamay be present, connectivity characteristics associated with each may beanalyzed separately or in combination by overlaying multiple prioritizedoutput data sets concurrently on the display (e.g., differentiatedgraphically).

As an example, if the arrhythmia data 34 specifies a micro re-entrantcircuit as the cause of the arrhythmia (e.g., atrial fibrillation), thenthe connectivity characterization function may prioritize localconnectivity associations. For instance, the connectivitycharacterization function 22 can tag local connectivity associations inresponse to the arrhythmia data and the output generator can identifythe region between such locations as a target site in the graphical map.As another example, if the arrhythmia data 34 specifies macro reentry asthe major cause of an arrhythmia (e.g., atrial tachycardia), then farconnectivity connections are of interest, which the connectivitycharacterization function 22 can tag in the connectivity data to enableprioritized display of such connectivity information. Localarrhythmogenic tissue that is identified (by connectivitycharacterization function 22) in the arrhythmia data 34 may further beassociated with and used to prioritize local connectivity associationsor unstable connectivity associations, for example.

As another example, when a particular type of connectivity associationis prioritized over one or more other types, each of the types ofassociations that is not being prioritized may be set to a non-displaycondition such that corresponding connectivity associations (that havebeen determined) are not rendered in the output that is generated byoutput generator 30. In this way, a user is only shown information aboutthe connectivity association that is being prioritized (e.g., based onthe arrhythmia data 34). In other examples, all the connectivityassociation data may be displayed and the prioritized information can begraphically emphasized (e.g., by color coding or bold lines) over thenon-prioritized information that has been determined for the relevanttime interval(s).

FIG. 2 depicts an example of a system 50 that may be implemented todetect one or more trajectories across a surface geometry (cardiacenvelope). The detection system 50 includes a trajectory detector 52that can be implemented as the trajectory detector 18 in the system 10of FIG. 1. In the example of FIG. 2, the trajectory detector 52 can beprogrammed to detect trajectories based on wave front data 54. The wavefront data 54 is computed by a wave front analyzer 56, which can beimplemented by wave front analyzer 16 of FIG. 1. In the example of FIG.2, the trajectory detector 52 can include executable code blocksdemonstrated as a wave end identifier 58, a distance calculator 60, adistance evaluator 62 and a trajectory builder 64. The trajectorydetector 52 executes code blocks 58, 60, 62 and 64 to generatetrajectory data 68 for wave ends across the geometric surface during oneor more time intervals.

In the example of FIG. 2, the wave front analyzer 56 can employ a phasecalculator 66 to compute phase of electrical activity for nodesdistributed across the geometric surface (cardiac envelope), such ascorresponding to patient tissue, based on the data 68 representing theelectrical activity for the geometric surface over time (e.g., one ormore time intervals of a plurality of sequential samples of electricalactivity). In some examples, the geometric surface can be represented asa mesh including a plurality of nodes interconnected by edges to definethe mesh.

By way of further example, the phase calculator 66 can be programmed toconvert each cycle of electrical signal into a periodic signal as afunction of time. For example, the phase calculator 66 can assign eachpoint in time in between the beginning and end of each cycle a phasevalue, such as between [−π and π] in an increasing manner. The phasecalculator 66 can compute the phase information for several timeintervals at various points in time to make the analysis robust in termsof temporal and spatial consistency. In some examples, such as for wherethe electrical data corresponds to or is derived from non-invasivelyacquired electrical signals, the phase calculator 66 can providecorresponding phase data for each location (e.g., about 2000 or morenodes) distributed across the cardiac envelope for one or more timeintervals for which the electrical data has been acquired. Since theelectrical signals can be measured and/or derived concurrently for anentire geometric region (e.g., up to the entire heart surface), thecomputed phase data and resulting wave front likewise are spatially andtemporally consistent across the geometric region of interest.

One example of how the calculator can determine phase based onelectrical data 12 for a surface is disclosed in PCT Application No.PCT/US13/60851 filed Sep. 20, 2013, and entitled PHYSIOLOGICAL MAPPINGFOR ARRHYTHMIA, which is incorporated herein by reference. Otherapproaches could also be utilized to determine phase, however. Thecomputed phase information provided by the phase calculator 66 can bestored in memory (e.g., as phase data) and utilized by the wave frontanalyzer 56 to generate the wave front data 54. As one example, the wavefront analyzer may be implemented according to the above-incorporatedPCT/US14/12051, among other approaches.

For example, the wave front analyzer 56 can be programmed withmachine-readable instructions to compute and identify wave frontlocations and, in turn, corresponding wave front lines based the phasecomputed (by phase calculator 66) for the signals across the geometricsurface (e.g., at nodes on a cardiac envelope) during one or more timeintervals. For instance, the wave front analyzer 56 determines that anactivation time or depolarization for each node begins at a time wherethe phase signal for a given node on the geometric surface crosses aselected phase value Φ_(S), which can define a phase threshold. Thephase threshold Φ_(S) for determining an activation or depolarizationboundary condition can be fixed for a given application or it can beprogrammable, such as in response to a user input. The wave frontanalyzer 56 further can determine which pairs of neighboring (adjacent)nodes across the surface have phase values encompassing the selectedphase value Φ_(S) the selected phase value at a given time index. Inthis context, the term encompass means that the selected phase valueΦ_(S) lies at or between the phase values for such pair of nodes. Theterm adjacent nodes can refer to nodes that are interconnected to eachother by an edge of a meshed surface, for example, or be located withina predetermined distance of each other (e.g., computed by an instance ofdistance calculator 60). For the example where the geometric surface isrepresented as a mesh of nodes interconnected by edges, the wave frontanalyzer 56 can determine if the selected phase value Φ_(S) is betweenthe phase values T and T for a pair of adjacent nodes i and j connectedby a common edge of the mesh (e.g., Φ₁≤Φ_(S)≤_(j) or Φ_(i)≥Φ_(S)≥Φ_(j)).This determination can be repeated for each interconnected node pairacross the geometric surface of interest to identify node pairs thatencompass the wave front for one or more time intervals.

The wave front analyzer 56 further can determine a location for the wavefront across the geometric surface for each time sample index. Forexample, the wave front location at a given time resides on a pathextending between each of the end node pairs identified as encompassingthe selected phase value Φ_(S). For each time index (e.g., sample time),the wave front analyzer 56 can identify a plurality of points thatestimate an activation or depolarization time across a geometricsurface. These points collectively can define a wave front across thesurface for each of a plurality of time indices, and the wave frontanalyzer 56 can connect such points to provide a corresponding wavefront line for a given time index. For example, the wave front analyzer56 further can be programmed to connect each of the plurality ofestimated wave front nodes by marching through each of the edges of themesh determined to contain the selected phase value Φ_(S). The pointsthrough each edge can thus correspond to an intersection point of eachedge, and the intersection points (nodes on the mesh) can be connectedtogether to represent a corresponding wave front at a given time index.The wave front analyzer 56 can provide wave front data 54 that specifiesthe nodes corresponding to wave front locations and corresponding wavefront lines at each time index during the time intervals specified bythe electrical data 12, including end nodes for each wave front line.

As a further example, the wave end identifier 58 of the trajectorydetector 52 is programmed to identify end points from wave front linesdetermined (by wave front analyzer 56) on the geometric surface for eachtime sample. For instance, the wave end identifier 58 can identify endpoints for each wave front line generated for a given time frame thatdoes not form a loop (e.g., it defines a segment with spaced apartends). For the first time sample in a given interval (including multipletime samples), the trajectory detector 52 can set each wave end point toinitialize a new trajectory and each such trajectory will be active (atleast initially). Then for the remaining time samples in the interval,the wave end identifier 58 can determined wave ends in a similar manner,namely from the end points of corresponding wave front lines for eachsubsequent time sample.

The distance calculator 60 can be programmed to compute anintratrajectory distance (at least spatially) to determine whether thewave end should be added to a respective trajectory or be omitted. Forexample, the distance calculator 60 can compute the distance for eachwave end in a current time sample with respect to a prior location ofall active trajectories from one or more previous time samples. Thedistance can be entirely spatial, such as a Euclidean distance computedin two or three-dimensional coordinate space of the surface geometry,and/or geodesic distance defined along the surface. In other examples,the distance can also account for the temporal distance (e.g., bytracking the time difference or absolute time for each end point). Thedistance evaluator 62 can be programmed to identify the closest activetrajectory (from a previous time sample in the given interval) based onthe distance values computed by the distance calculator 60. The distanceevaluator 62 evaluates the computed distance (from calculator 60)between the current end points and respective wave front line in one ormore prior samples, such as by comparing the computed distance to one ormore distance thresholds.

The trajectory builder 64 can be programmed to construct trajectoriesfrom wave end points identified in the current time sample by appending(or not appending) each such wave end points to an active trajectory.For instance, the trajectory builder 64 can determine whether theclosest active trajectory (determined by the distance evaluator 62) hasyet been updated for the current time sample. If the closest activetrajectory to a given wave end has not yet been updated, the trajectorybuilder 64 can determine if the distance to such closest activetrajectory is less than a predetermined threshold (e.g., about 1 cm toabout 2 cm). If it is closer than such threshold, the trajectory builder64 can append the wave end to the closest trajectory that has beenidentified (e.g., that is within the distance threshold and has not yetbeen updated). If the trajectory builder determines that the closest,not yet updated wave end is not within the threshold, the trajectorydetector 52 can begin a new trajectory using this wave end as theinitial wave end of such new trajectory. If the closest activetrajectory has already been updated, the trajectory builder 64 canbranch out to begin a new trajectory from the given wave end.

The trajectory detector 52 thus can repeat the foregoing process byexecuting the distance calculator 60, distance evaluator 62 andtrajectory builder 64 through the all of the wave ends in the currenttime interval. Additionally, the trajectory detector 52 can control thestate (e.g., active or inactive) of each trajectory during the process.For example, if after going through such wave ends any trajectory thatwas active in a previous time frame is not updated by this process forthe current time frame (or is not updated across a prescribed number ofconsecutive time samples), the trajectory detector 52 can change thestate of such trajectory from an active to an inactive state. Thetrajectory detector 52 thus stores as the trajectory data 68 in memoryto include, for example, state, location and timing information for waveends that form each trajectory as determined based on one or more timeintervals of the wave front data 54. The connectivity detector 20 andconnectivity characterization function 22 (FIG. 1) further analyze thewave front data 54 and the trajectory data 68 to detect and characterizeconnected trajectories as disclosed herein.

FIG. 3 depicts an example of a system 150 that can be utilized forperforming medical testing (diagnostics, screening and/or monitoring)and/or treatment of a patient. In some examples, the system 150 can beimplemented to generate corresponding maps for a patient's heart 152 inreal time as part of a diagnostic procedure (e.g., an electrophysiologystudy) to help assess the electrical activity and identify arrhythmiadrivers for the patient's heart corresponding to connected trajectories.Additionally or alternatively, the system 150 can be utilized as part ofa treatment procedure, such as to help a physician determine parametersfor delivering a therapy to the patient (e.g., delivery location, amountand type of therapy) based on one or more identified connectedtrajectories.

As an example, a catheter having one or more therapy delivery devices156 affixed thereto can be inserted into a patient's body 154 as tocontact the patient's heart 152, endocardially or epicardially. Theplacement of the therapy delivery device 156 can be guided according tothe location and characteristics of connected trajectories that havebeen identified, such as disclosed herein. The guidance can beautomated, semi-automated or be manually implemented based oninformation provided. Those skilled in the art will understand andappreciate various type and configurations of therapy delivery devices156 that can be utilized, which can vary depending on the type oftreatment and the procedure. For instance, the therapy device 156 can beconfigured to deliver electrical therapy, chemical therapy, sound wavetherapy, thermal therapy or any combination thereof.

By way of example, the therapy delivery device 156 can include one ormore electrodes located at a tip of an ablation catheter configured togenerate heat for ablating tissue in response to electrical signals(e.g., radiofrequency energy) supplied by a therapy system 158. In otherexamples, the therapy delivery device 156 can be configured to delivercooling to perform ablation (e.g., cryogenic ablation), to deliverchemicals (e.g., drugs), ultrasound ablation, high-frequency ablation,or a combination of these or other therapy mechanisms. In still otherexamples, the therapy delivery device 156 can include one or moreelectrodes located at a tip of a pacing catheter to deliver electricalstimulation, such as for pacing the heart, in response to electricalsignals (e.g., pacing pulses) supplied by the therapy system 158. Othertypes of therapy can also be delivered via the therapy system 158 andthe invasive therapy delivery device 156 that is positioned within thebody.

As a further example, the therapy system 158 can be located external tothe patient's body 154 and be configured to control therapy that isbeing delivered by the device 156. For instance, the therapy system 158includes controls (e.g., hardware and/or software) 160 that cancommunicate (e.g., supply) electrical signals via a conductive linkelectrically connected between the delivery device (e.g., one or moreelectrodes) 156 and the therapy system 158. The control system 160 cancontrol parameters of the signals supplied to the device 156 (e.g.,current, voltage, repetition rate, trigger delay, sensing triggeramplitude) for delivering therapy (e.g., ablation or stimulation) viathe electrode(s) 154 to one or more location of the heart 152. Thecontrol circuitry 160 can set the therapy parameters and applystimulation based on automatic, manual (e.g., user input) or acombination of automatic and manual (e.g., semiautomatic) controls,which may be based on the detection and associated characteristics ofconnected trajectories on the cardiac envelope. One or more sensors (notshown) can also communicate sensor information from the therapy device156 back to the therapy system 158. The position of the device 156relative to the heart 152 can be determined and tracked intraoperativelyvia an imaging modality (e.g., fluoroscopy, x-ray), a mapping system162, direct vision or the like. The location of the device 156 and thetherapy parameters thus can be combined to determine and controlcorresponding therapy parameter data.

Before, during and/or after delivering a therapy via the therapy system158, another system or subsystem can be utilized to acquireelectrophysiology information for the patient. In the example of FIG. 3,a sensor array 164 includes one or more electrodes that can be utilizedfor recording patient electrical activity. As one example, the sensorarray 164 can correspond to a high-density arrangement of body surfacesensors (e.g., greater than approximately 200 electrodes) that aredistributed over a portion of the patient's torso for measuringelectrical activity associated with the patient's heart (e.g., as partof an electrocardiographic mapping procedure). An example of anon-invasive sensor array that can be used is shown and described inInternational application No. PCT/US2009/063803, filed 10 Nov. 2009,which are incorporated herein by reference. Other arrangements andnumbers of sensing electrodes can be used as the sensor array 164. As anexample, the array can be a reduced set of electrodes, which does notcover the patient's entire torso and is designed for measuringelectrical activity for a particular purpose (e.g., an array ofelectrodes specially designed for analyzing atrial fibrillation and/orventricular fibrillation) and/or for monitoring electrical activity fora predetermined spatial region of the heart (e.g., atrial region(s) orventricular region(s)).

One or more sensors may also be located on the device 156 that isinserted into the patient's body. Such sensors can be utilizedseparately or in conjunction with the non-invasive sensors 164 formapping electrical activity for an endocardial surface, such as the wallof a heart chamber, as well as for an epicardial surface. Additionally,such electrode can also be utilized to help localize the device 156within the heart 152, which can be registered into an image or map thatis generated by the system 150. Alternatively, such localization can beimplemented in the absence of emitting a signal from an electrode withinor on the heart 152.

In each of such example approaches for acquiring patient electricalinformation, including invasively, non-invasively, or a combination ofinvasive and non-invasive sensing, the sensor array(s) 164 provide thesensed electrical information to a corresponding measurement system 166.The measurement system 166 can include appropriate controls andassociated circuitry 168 for providing corresponding measurement data170 that describes electrical activity detected by the sensors in thesensor array 164. The measurement data 170 can include analog and/ordigital information (e.g., corresponding to electrical data 12).

The control 168 can also be configured to control the data acquisitionprocess (e.g., sample rate, line filtering) for measuring electricalactivity and providing the measurement data 170. In some examples, thecontrol 168 can control acquisition of measurement data 170 separatelyfrom the therapy system operation, such as in response to a user input.In other examples, the measurement data 170 can be acquired concurrentlywith and in synchronization with delivering therapy by the therapysystem, such as to detect electrical activity of the heart 152 thatoccurs in response to applying a given therapy (e.g., according totherapy parameters). For instance, appropriate time stamps can beutilized for indexing the temporal relationship between the respectivemeasurement data 170 and therapy parameters use to deliver therapy as tofacilitate the evaluation and analysis thereof.

The mapping system 162 is programmed to combine the measurement data 170corresponding to electrical activity of the heart 152 with geometry data172 (e.g., corresponding to geometry data 14) by applying appropriateprocessing and computations to provide corresponding output data 174. Asan example, the output data 174 can represent one or more connectedtrajectories (e.g., trajectory pairs) determined from the electricalmeasurement data 170 acquired for the patient over one or more timeintervals. As disclosed herein, connected trajectories detected andcharacterized over one or more time intervals can localize identifyarrhythmia drivers across the heart 152. The output data 174 can includeone or more graphical maps demonstrating determined arrhythmia driverswith respect to a geometric surface of the patient's heart 152 (e.g.,trajectory information superimposed on a surface of the heart 152).

Since the measurement system 166 can measure electrical activity of apredetermined region or the entire heart concurrently (e.g., where thesensor array 164 covers the entire thorax of the patient's body 154),the resulting output data (e.g., visualizing attributes of identifiedstable rotors and/or other electrocardiographic maps) thus can alsorepresent concurrent data for the predetermined region or the entireheart in a temporally and spatially consistent manner. The time intervalfor which the output data/maps are computed can be selected based onuser input (e.g., selecting a timer interval from one or morewaveforms). Additionally or alternatively, the selected intervals can besynchronized with the application of therapy by the therapy system 158.

For the example where the electrical measurement data is obtainednon-invasively (e.g., via body surface sensor array 164), electrogramreconstruction 180 can be programmed to compute an inverse solution andprovide corresponding reconstructed electrograms based on the processsignals and the geometry data 172. The reconstructed electrograms thuscan correspond to electrocardiographic activity across a cardiacenvelope, and can include static (three-dimensional at a given instantin time) and/or be dynamic (e.g., four-dimensional map that varies overtime). Examples of inverse algorithms that can be utilized in the system10 include those disclosed in U.S. Pat. Nos. 7,983,743 and 6,772,004,which are incorporated herein by reference. The EGM reconstruction 180thus can reconstruct the body surface electrical activity measured viathe sensor array 164 onto a multitude of locations on a cardiac envelope(e.g., greater than 1000 locations, such as about 2000 locations ormore), such as corresponding to electrical data 12 and associatedgeometry data 14. In other examples, the mapping system 162 can computeelectrical activity over a sub-region of the heart based on electricalactivity measured invasively, such as via a basket catheter or otherform of measurement probe, to provide corresponding electrical data.

As disclosed herein, the cardiac envelope can correspond to a threedimensional surface geometry corresponding to a patient's heart, whichsurface can be epicardial or endocardial. Alternatively or additionally,the cardiac envelope can correspond to a geometric surface that residesbetween the epicardial surface of a patient's heart and the surface ofthe patient's body where the sensor array 164 has been positioned.Additionally, the geometry data 172 that is utilized by the electrogramreconstruction 180 can correspond to actual patient anatomical geometry,a preprogrammed generic model or a combination thereof (e.g., a modelthat is modified based on patient anatomy).

As an example, the geometry data 172 may be in the form of graphicalrepresentation of the patient's torso, such as image data acquired forthe patient. Such image processing can include extraction andsegmentation of anatomical features, including one or more organs andother structures, from a digital image set. Additionally, a location foreach of the electrodes in the sensor array 164 can be included in thepatient geometry data 172, such as by acquiring the image while theelectrodes are disposed on the patient and identifying the electrodelocations in a coordinate system through appropriate extraction andsegmentation. Other non-imaging based techniques can also be utilized toobtain the position of the electrodes in the sensor array, such as adigitizer or manual measurements.

As mentioned above, the geometry data 172 can correspond to amathematical model, such as can be a generic model or a model that hasbeen constructed based on image data for the patient. Appropriateanatomical or other landmarks, including locations for the electrodes inthe sensor array 164 can be identified in the geometry data 172 tofacilitate registration of the electrical measurement data 170 andperforming the inverse method thereon. The identification of suchlandmarks can be done manually (e.g., by a person via image editingsoftware) or automatically (e.g., via image processing techniques). Byway of further example, the geometry data 172 can be acquired usingnearly any imaging modality based on which a correspondingrepresentation of the geometrical surface can be constructed, such asdescribed herein. Such imaging may be performed concurrently withrecording the electrical activity that is utilized to generate thepatient measurement data 170 or the imaging can be performed separately(e.g., before or after the measurement data has been acquired).

Following (or concurrently with) determining electrical potential data(e.g., electrogram data computed from non-invasively and/or invasivelyacquired measurements) across the geometric surface of the heart 152,the electrogram data can further undergo signal processing by mappingsystem 162 to generate the output data, which may include one or moregraphical maps. The mapping system 162 can include a trajectoryconnectivity analyzer method 182 (e.g., corresponding to connectivitydetector 20, 52 and/or connectivity characterization function 22) foridentifying and/or characterizing connected trajectories, such asdisclosed herein. The trajectory connectivity analyzer 182 can also beprogrammed to compute other information associated with connectedtrajectories, such as temporal and/or spatial characteristics.

A map generator 188 can be programmed to generate graphic maps fordisplay based on the computed output data 174. A visualization engine184 can control the display. For instance, parameters associated withthe displayed graphical representation, corresponding to an outputvisualization of the computed map, such as including selecting a timeinterval, temporal and spatial thresholds, the type of information thatis to be presented in the display 194 and the like can be selected inresponse to a user input via a graphical user interface (GUI) 190. Forexample, a user can employ the GUI 190 to selectively program one ormore parameters (e.g., temporal and spatial thresholds, filterparameters and the like) utilized by the trajectory connectivityanalyzer 182 and/or to select one or more sample time intervals to set atime duration for the electrical data 170. The mapping system 162 thuscan generate corresponding output data 174 that can in turn be renderedas a corresponding graphical output in a display 192, such as includingone or more electrocardiographic maps 192. For example, the mapgenerator 188 can generate maps and other output visualizations, such asincluding but not limited to the maps and other output visualizationsdisclosed herein.

As an example, the map generator 188 can generate a map depicting alocal connectivity association in response to the trajectoryconnectivity analyzer 182 applying distance (temporal and/or spatial)criteria to a connected trajectories to identify a set of connectedtrajectories that are less that a predetermined distance apart from eachother. As another example, the map generator 188 can generate a mapdepicting a far connectivity association in response to the trajectoryconnectivity analyzer 182 applying different distance criteria toconnected trajectories to identify a set of connected trajectories thatare spaced apart from each other by a distance that exceeds far distancethreshold. The map generator may generate a map depicting intermediateconnectivity associations in response to the trajectory connectivityanalyzer 182 identifying a set of connected trajectories that are spacedapart from each other by a distance that between the near and farthresholds. The visualization engine may provide separate maps fordifferent types of connectivity associations. In other examples, thevisualization engine may graphically differentiate different types ofassociation and display multiple types of associations concurrently in agiven map. The trajectory connectivity analyzer 182 and/or thevisualization engine 188 further may prioritize one of the predeterminedconnectivity associations for trajectories over others, such as based ona type or arrhythmia, such as in response to a user input (via GUI 190)or other information specifying an underlying type of arrhythmia, suchas disclosed herein.

Additionally, in some examples, the output data 174 can be utilized bythe therapy system 158. For instance, the control system 160 mayimplement fully automated control, semi-automated control (partiallyautomated and responsive to a user input) or manual control based on theoutput data 174. In some examples, the control 160 of the therapy system158 can utilize the output data 174 to control one or more therapyparameters. As an example, the control 160 can control delivery ofablation therapy to a site of the heart (e.g., epicardial or endocardialwall) based on one or more arrhythmia drivers identified by the analyzermethod 182. In other examples, an individual can view the map generatedin the display to manually control the therapy system, such as using theidentification location of connected trajectories (e.g., the regionbetween connected trajectories) on the graphical map as a treatmentsite. Other types of therapy and devices can also be controlled based onthe output data 174 and corresponding graphical map 194.

FIGS. 4-8 depict examples of graphical maps that can be generated (e.g.,by output generator 30 or mapping system 162) to visualize on a display(e.g., 30 or 194) to demonstrate connected trajectories and associatedconnectivity characteristics superimposed on a geometric surface(cardiac envelope) for a heart model. In these examples, the heart modelincludes a mesh surface of nodes interconnected by edges, as describedherein. In other examples, different models could be utilized.Additionally, each of the maps may be combined together or selectivelyswitched between in response to a user input for one or more timeintervals. The intervals can be consecutive intervals or be selectedintervals (automatically selected or selected in response to a userinput).

FIG. 4 depicts an example of a graphical map 200 of a heart 202demonstrating connectivity between trajectories determined over aplurality of different time intervals. In this example, connectivitybetween each trajectory pair is demonstrated by an arc 204 that extendsbetween each trajectory pair. For instance, bolder (thicker) lines thusmay be used to visually indicate longer times for pairing amongconnected trajectories, while relatively thinner lines indicate shorterpairing times. In other examples, different graphical features or colorscales may be used to indicate relative differences in trajectorypairing times (e.g., determined by connectivity characterizationfunction 22 or analyzer 182).

FIG. 5 depicts an example of a graphical map 210 demonstrating a pair ofconnected trajectories 212 and 214. The trajectories 212 and 214 in thisexample demonstrate local connected trajectory pairs (e.g., determinedby connectivity characterization function 22 or analyzer 182). Forexample, the local connected trajectory pairing may be determined basedon a computed distance between the connected trajectories that is lessthan a local distance threshold, as disclosed herein.

FIG. 6 depicts an example of a graphical map 300 demonstrating connectedtrajectories 302 and 304 in combination with a graphical representationof rotation cores 306 and 308 mapped across the cardiac envelope. Theconnectivity between trajectories 302 and 304 is demonstrated viagraphical arc 310 rendered (e.g., as a spline curve) between thetrajectories.

FIGS. 7 and 8 depict different views of a graphical map 350 showing alocal connectivity association for a trajectory pair that has beenaggregated over a plurality of time intervals. FIG. 7 depicts an exampleof a graphical map demonstrating local connectivity association betweentrajectories over a plurality of different time intervals. FIG. 8depicts an example of a graphical map demonstrating another view of thesame local connectivity association between trajectories from anotherview for the map of FIG. 7. For example, the local connectivityassociation demonstrated may be one type (local) of a multipleconnectivity associations that is being prioritized and rendered on thedisplay over other connectivity pairings that might exist, such asdisclosed herein.

FIGS. 9 and 10 depict different views of a graphical map 380 showing afar connectivity association for a trajectory pair that has beenaggregated over a plurality of time intervals (similar to the localassociation of FIGS. 7 and 8). In FIG. 9, a posterior-anterior view ofthe heart demonstrates a graphical map showing far connectivityassociations for connected trajectories over a plurality of differenttime intervals. FIG. 10 depicts an example of the graphical mapdemonstrating another view (top view) of the same local connectivityassociations between trajectories. In the example of FIGS. 9 and 10, thefar associations are identified according to a distance threshold of 5cm and a minimum connection time of 300 ms. As mentioned, differentthresholds (default or user programmable) could be used to establishtemporal and spatial distance criteria for identifying connectedtrajectories that are far apart.

In view of the foregoing structural and functional features describedabove, a method that can be implemented will be better appreciated withreference to FIG. 11. While, for purposes of simplicity of explanation,the method of FIG. 11 is shown and described as executing serially, itis to be understood and appreciated that such method is not limited bythe illustrated order, as some aspects could, in other embodiments,occur in different orders and/or concurrently with other aspects fromthat shown and described herein. Moreover, not all illustrated featuresmay be required to implement a method. The method or portions thereofcan be implemented as instructions stored in one or more non-transitorystorage media as well as be executed by a processing resource (e.g., oneor more processor cores) of a computer system, for example.

FIG. 11 is a flow diagram depicting an example method 400 for detectingand analyzing connectivity associations for trajectories based onelectrical data representing electrical activity distributed across ageometric surface (cardiac envelope) for one or more time intervals. Themethod begins at 402 to analyze (by wave front analyzer 16, 56) theelectrical data and determine one or more wave front lines over a giventime interval. For example, information describing the wave front linescan be stored in memory as wave front data, such as location data fornodes along each wave front line, timing information and relatedelectrical phase values for the nodes (e.g., computed by phasecalculator 66). At 404, respective trajectories for wave ends of eachwave front line that has been determined across the cardiac surface aredetermined (e.g., by trajectory detector 18, 52 182) for time indices inthe given time interval. For example, trajectories may be constructedfor each wave end of the wave front lines according to the distancebetween wave ends in successive time frames of the given time interval.

At 406, connectivity among trajectories is determined (e.g., byconnectivity detector 20, 182). For instance, a set of connectedtrajectories may is identified based on a duration that the trajectoriesremain connected to each other by a wave front line during the giventime interval (or at least a portion thereof). For instance, temporalcriteria may be applied to the duration trajectories are connected toascertain whether wave end trajectories are connected.

At 408 through 416, a connectivity association is characterized (e.g.,by connectivity detector 20, connectivity characterization function 22,trajectory connectivity analyzer 182) for each of the connectedtrajectories in the set of connected trajectories. As disclosed herein,there characterization can discriminate among a plurality of differenttypes of predetermined connectivity associations, such as to specify alocal connectivity association, a far connectivity association and anintermediate connectivity association. The discrimination can classifyeach of the connected trajectories by applying temporal and/or spatialcriteria. By way of example, at 408, a determination is made whetherlocal criteria is satisfied. For instance, this determination at 408 caninclude determining whether a computed distance is less than a localdistance threshold and whether time of connectivity for the trajectoriesexceeds a temporal threshold. If the determination is positive (YES),indicating that the local temporal and spatial criteria is met, themethod proceeds to 410 to characterize the connectivity association as alocal connectivity association for the connected trajectories inresponse to determining that the distance is less than the firstthreshold. The association can be stored in memory (as metadata) tospecify the type of connectivity association. If the determination at408 is negative (the local criteria is not met), the method proceeds to412. At 412, a determination is made whether far criteria is satisfied.The far criteria may include spatial and time thresholds. As an example,the determination includes determining if the computed distance isgreater than a far distance threshold and the time exceeds a temporalthreshold. For instance, one or both far thresholds are different fromthe local thresholds applied at 408. In some examples, a common timethreshold may be used but different distance thresholds. If thedetermination at 412 is positive (YES), indicating that the far criteriahas been met, the method proceeds to 414 to characterize theconnectivity association as a far connectivity association for theconnected trajectories. Thus, in response to determining that thedistance is exceeds the second threshold, the connectivity associationfor the set of connected trajectories can be specified as far.

If the determination at 412 is negative (neither the local or farcriteria has been satisfied), the method proceeds to 416 to characterizethe connectivity association for the set of connected trajectories asbeing intermediate (e.g., residing in between the first and seconddistance thresholds. Other criteria, which may involve more or less thanthree types classifications for connected trajectories, may be used.From 416 as well as from each of 410 and 414, the method proceeds to 418to generate an output map to visualize connected trajectories anddetermined connectivity characteristics. As disclosed herein the mapsmay be static maps graphically representing connectivity information fortrajectories on a cardiac envelope over one or more time intervals,which may be selected in response to a user input. Alternatively, themap generated at 418 may be dynamic (animated) showing how detectedtrajectories change across the cardiac envelope over time.

The locations of the trajectories and the region extending between thetrajectories may be further graphically represented on the map as atarget site (e.g., for applying ablation or other treatment).Localization methods may be employed to help guide a therapy device(e.g., device 156) to the identified target site for delivery oftreatment. Changes in connected trajectories and trajectory connectivitycharacteristics in response to application of therapy to cardiac tissue(at specified target sites) may be used to provide visual feedback tothe user about the success of such therapy and whether additionaltreatment is needed or the procedure may be terminated.

In view of the foregoing structural and functional description, thoseskilled in the art will appreciate that portions of the systems andmethod disclosed herein may be embodied as a method, data processingsystem, or computer program product such as a non-transitory computerreadable medium. Accordingly, these portions of the approach disclosedherein may take the form of an entirely hardware embodiment, an entirelysoftware embodiment (e.g., in a non-transitory machine readable medium),or an embodiment combining software and hardware. Furthermore, portionsof the systems and method disclosed herein may be a computer programproduct on a computer-usable storage medium having computer readableprogram code on the medium. Any suitable computer-readable medium may beutilized including, but not limited to, static and dynamic storagedevices, hard disks, optical storage devices, and magnetic storagedevices.

Certain embodiments have also been described herein with reference toblock illustrations of methods, systems, and computer program products.It will be understood that blocks of the illustrations, and combinationsof blocks in the illustrations, can be implemented bycomputer-executable instructions. These computer-executable instructionsmay be provided to one or more processor of a general purpose computer,special purpose computer, or other programmable data processingapparatus (or a combination of devices and circuits) to produce amachine, such that the instructions, which execute via the processor,implement the functions specified in the block or blocks.

These computer-executable instructions may also be stored incomputer-readable memory that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablememory result in an article of manufacture including instructions whichimplement the function specified in the flowchart block or blocks. Thecomputer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational steps to be performed on the computer or other programmableapparatus to produce a computer implemented process such that theinstructions which execute on the computer or other programmableapparatus provide steps for implementing the functions specified in theflowchart block or blocks.

What have been described above are examples. It is, of course, notpossible to describe every conceivable combination of structures,components, or methods, but one of ordinary skill in the art willrecognize that many further combinations and permutations are possible.Accordingly, the invention is intended to embrace all such alterations,modifications, and variations that fall within the scope of thisapplication, including the appended claims. Where the disclosure orclaims recite “a,” “an,” “a first,” or “another” element, or theequivalent thereof, it should be interpreted to include one or more thanone such element, neither requiring nor excluding two or more suchelements. As used herein, the term “includes” means includes but notlimited to, and the term “including” means including but not limited to.The term “based on” means based at least in part on.

What is claimed is:
 1. One or more non-transitory computer-readablemedia having instructions executable by a processor, the instructionsprogrammed to perform a method comprising: analyzing electrical data tolocate one or more wave front lines over a given time interval, theelectrical data representing electrophysiological signals distributedacross a cardiac envelope for one or more time intervals; determining arespective trajectory for each wave end of each wave front line that islocated across the cardiac envelope over the given time interval;identifying a set of connected trajectories based on a duration that thetrajectories are connected to each other by a respective wave front lineduring the given time interval; and characterizing a connectivityassociation for the trajectories in the set of connected trajectories.2. The media of claim 1, wherein the method further comprises:determining a distance between the trajectories in the set of connectedtrajectories; and discriminating between a plurality of different typesof predetermined connectivity associations for the set of connectedtrajectories based on the determined distance.
 3. The media of claim 2,wherein discriminating between the plurality of different types ofpredetermined connectivity associations further comprises applying aspatial threshold to ascertain which one of the plurality of differenttypes of predetermined connectivity associations characterizes theconnectivity association.
 4. The media of claim 3, wherein applying thespatial threshold further comprises applying multiple spatial thresholdsto the determined distances to ascertain which one of the plurality ofdifferent types of predetermined connectivity associations characterizesthe connectivity association.
 5. The media of claim 4, wherein theplurality of different types of predetermined connectivity associationsinclude a local connectivity association, a far connectivity associationand an intermediate connectivity association, and wherein the methodfurther comprises: specifying the local connectivity association for theset of connected trajectories in response to determining that thedistance is less than a first threshold, specifying the far connectivityassociation for the set of connected trajectories in response todetermining that the distance exceeds a second threshold, and specifyingthe intermediate connectivity association for the set of connectedtrajectories in response to determining that the distance is outside ofthe first and second thresholds.
 6. The media of claim 1, whereinidentifying connected trajectories further comprises: determining theduration that the trajectories are connected to each other by the wavefront line during the given time interval, and wherein the trajectoriesare identified as being connected in response to determining that theduration that the trajectories are connected to each other during thegiven time interval exceeds a predetermined time period.
 7. The media ofclaim 6, wherein the predetermined time period is programmable inresponse to a user input.
 8. The media of claim 6, further comprising:determining a spatial distance between the trajectories in the set ofconnected trajectories; and specifying which type of connectivityassociation characterizes the connectivity association for the set ofconnected trajectories based on the determined distance relative to aspatial threshold and the duration that the trajectories are connectedto each other during the given time interval relative to a timethreshold, wherein the spatial threshold and/or the time threshold areprogrammable in response to a user input.
 9. The media of claim 1,wherein the method further comprises generating an output visualizationto display the connected trajectories spatially on a graphicalrepresentation of a heart.
 10. The media of claim 1, wherein theelectrical signals correspond to measured or reconstructed signals at aplurality of nodes distributed across the cardiac envelope for aplurality of time intervals, wherein the method further comprisesrepeating the analyzing, determining, identifying and characterizing foreach of the plurality of time intervals to characterize a respectiveconnectivity association for each set of connected trajectories.
 11. Themedia of claim 10, wherein the method further comprises generating anoutput visualization to display a representation of at least some ofconnected trajectories and/or connectivity associations spatially on agraphical representation of a heart.
 12. The media of claim 11, whereinthe method further comprises prioritizing one type of connectivityassociation relative to another type of connectivity association in theoutput visualization according to a cause of arrhythmia.
 13. The mediaof claim 12, wherein the cause of arrhythmia is defined in response to auser input specifying the cause.
 14. The media of claim 10, wherein themethod further comprises discriminating between a plurality of differenttypes of predetermined connectivity associations for each set ofconnected trajectories according to at least one of spatial and/ortemporal criteria.
 15. The media of claim 1, wherein theelectrophysiological signals distributed across the cardiac envelopecorrespond to signals at nodes that are derived based on at least one ofinvasively acquired electrical signals for a patient or non-invasivelyacquired electrical signals for the patient.
 16. A system comprising:memory to store machine readable instructions and data, the datacomprising store electrical data representing electrophysiologicalsignals distributed across a cardiac envelope for one or more timeintervals; at least one processor to access the memory and execute theinstructions, the instructions comprising: a wave front analyzer thatanalyzes electrical data for a given time interval to identify a wavefront line across the cardiac envelope; a trajectory detector thatdetects a respective trajectory for wave ends of the wave front lineover the given time interval; a connectivity detector that identifies aset of connected trajectories according to a duration that thetrajectories of wave ends are connected to each other by the wave frontline over the given time interval; a connectivity characterizationfunction that applies spatial and/or temporal criteria to characterize aconnectivity association for trajectories in the set of connectedtrajectories; and an output generator that provides output data to drivea display with a graphical representation of the connectivityassociation for the trajectories in the set of connected trajectories.17. The system of claim 16, wherein the connectivity characterizationfunction determines a distance between the trajectories in the set ofconnected trajectories and discriminates between a plurality ofdifferent types of predetermined connectivity associations for the setof connected trajectories based on the determined distance.
 18. Thesystem of claim 17, wherein the connectivity characterization functionis further programmed to apply a spatial threshold to the determineddistance between each of the trajectories in the set of connectedtrajectories to ascertain which one of a plurality of different types ofpredetermined connectivity associations characterizes the connectivityassociation, the one of the plurality of different types ofpredetermined connectivity associations comprising one of a localconnectivity association, a far connectivity association and anintermediate connectivity association.
 19. The system of claim 18,wherein the connectivity characterization function is further programmedto: specify the local connectivity association for the set of connectedtrajectories in response to determining that the distance is less than afirst threshold, specify the far connectivity association for the set ofconnected trajectories in response to determining that the distanceexceeds a second threshold, and specify the intermediate connectivityassociation for the set of connected trajectories in response todetermining that the distance is outside of the first and secondthresholds.
 20. The system of claim 18, wherein the connectivitycharacterization function is further programmed to prioritize oneplurality of different types of predetermined connectivity associationsrelative to another type of plurality of different types ofpredetermined connectivity associations according to a cause ofarrhythmia, the output generator providing the output data to includethe prioritized connectivity association in the graphical representationof the connectivity association.
 21. The system of claim 16, furthercomprising: an array of sensors to invasively and/or or non-invasivelymeasure electrical activity from a patient's body; and a measurementsystem to control measurements by the sensors and to provide theelectrical data, the electrical data including measured and/orreconstructed electrophysiological signals at a plurality of nodesdistributed across the cardiac envelope for a plurality of timeintervals.